package com.jyw.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jyw.system.domain.SysFormConfigColumn;

import java.util.List;

/**
 * 系统表单配置字段Service接口
 *
 * @author ZhangCheng
 * @date 2023-08-10
 */
public interface ISysFormConfigColumnService extends IService<SysFormConfigColumn> {

    /**
     * 查询系统表单配置字段
     *
     * @param id 系统表单配置字段主键
     * @return 系统表单配置字段
     */
    SysFormConfigColumn selectSysFormConfigColumnById(Long id);

    /**
     * 根据主表查询系统表单配置字段
     *
     * @param formId
     * @return
     */
    List<SysFormConfigColumn> selectByFormId(Long formId);

    /**
     * 查询系统表单配置字段列表
     *
     * @param sysFormConfigColumn 系统表单配置字段
     * @return 系统表单配置字段集合
     */
    List<SysFormConfigColumn> selectSysFormConfigColumnList(SysFormConfigColumn sysFormConfigColumn);

    /**
     * 新增系统表单配置字段
     *
     * @param sysFormConfigColumn 系统表单配置字段
     * @return 结果
     */
    int insertSysFormConfigColumn(SysFormConfigColumn sysFormConfigColumn);

    /**
     * 修改系统表单配置字段
     *
     * @param sysFormConfigColumn 系统表单配置字段
     * @return 结果
     */
    int updateSysFormConfigColumn(SysFormConfigColumn sysFormConfigColumn);

    /**
     * 批量修改系统表单配置字段
     *
     * @param columns
     */
    void updateColumnList(List<SysFormConfigColumn> columns);

    /**
     * 批量删除系统表单配置字段
     *
     * @param ids 需要删除的系统表单配置字段主键集合
     * @return 结果
     */
    int deleteSysFormConfigColumnByIds(Long[] ids);

    /**
     * 删除系统表单配置字段信息
     *
     * @param id 系统表单配置字段主键
     * @return 结果
     */
    int deleteSysFormConfigColumnById(Long id);

}
